package com.qianfeng.mybatis.dao;

import com.qianfeng.mybatis.pojo.Area;
import com.qianfeng.mybatis.pojo.AreaAddPhone;
import com.qianfeng.mybatis.pojo.Phone;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface AreaDao {
    //todo 根据id查询数据
    Area findById(Integer id);
    //todo 根据名字查询
    Area findByName(String name);
    //todo 查询所有
    List<Area> findAll();
    //todo 模糊查询
    List<Area> findByAreaNameFuzzy(Area area);
    //todo 更新
    int updateAreaNameById(@Param("newName") String newName, @Param("id") Integer id);
    //todo 通过id删除数据
    int deleteById(Integer id);
    //todo 插入数据
    void insertIntoArea(Area area);
    //todo 插入数据返回主键
    void insertIntoAreaGetPrimaryKey(Area area);
    //todo 查询leftjoin表，条件为小于某个id值，查询的结果包含第一个表对象+第二个表对象整合
    List<AreaAddPhone> findLeftJoin(Integer limitId);
}
